import matplotlib
matplotlib.use('TkAgg')  # 或者根据你的系统选择合适的后端
import matplotlib.pyplot as plt
from matplotlib import rcParams

rcParams['font.family'] = 'STHeiti'  # Mac
# rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei', 'SimSun', 'FangSong', 'KaiTi']
rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

"""
折线图 plot
条形图 bar
饼图  pie
散点图 scatter
箱线图 boxplot
多个图标
组合图
"""

# 箱线图
# 创建图表并创建
plt.figure(figsize=(10, 8))

data = {
    '语文': [82, 85, 88, 70, 90, 76, 84, 83, 95],
    '数学': [75, 80, 79, 93, 88, 82, 87, 89, 92],
    '英语': [70, 72, 68, 65, 78, 80, 85, 90, 95],
}

plt.boxplot(data.values(), tick_labels=data.keys())

# 添加标题和标签
plt.title('各科成绩分布（箱线图）', color='r', fontsize=20)
#
plt.ylabel('分数', fontsize=10)

# 添加网格线
plt.grid(True, axis='y', linestyle='--', alpha=0.5)

# 自动优化排版
plt.tight_layout()
# 显示图表
plt.show()

# 黄色的线为中位数
# 箱体的宽度反应了数据的集中度

